#!/usr/bin/env bash
FILE_PATH="/d/develop/demo/shell-learn/README.md"

# 是否存在
if [ -e $FILE_PATH ]; then
  echo -e "\033[32m $FILE_PATH 文件存在 \033[0m"
else
  echo echo -e "\033[33m $FILE_PATH 文件不存在 \033[0m"
fi

# 是否可读
if [ -r $FILE_PATH ]; then
  echo -e "\033[32m $FILE_PATH 可读 \033[0m"
else
  echo echo -e "\033[33m $FILE_PATH 不可读 \033[0m"
fi

# 是否可写
if [ -w $FILE_PATH ]; then
  echo -e "\033[32m $FILE_PATH 可写 \033[0m"
else
  echo echo -e "\033[33m $FILE_PATH 不可写 \033[0m"
fi

# 是否可执行
if [ -x $FILE_PATH ]; then
  echo -e "\033[32m $FILE_PATH 可执行 \033[0m"
else
  echo -e "\033[33m $FILE_PATH 不可执行 \033[0m"
fi

# 是否是特殊文件
if [ -f $FILE_PATH ]; then
  echo -e "\033[32m $FILE_PATH 普通文件 \033[0m"
else
  echo -e "\033[33m $FILE_PATH 特殊文件 \033[0m"
fi

# 检测是文件还是目录
if [ -d $FILE_PATH ]; then
  echo -e "\033[32m $FILE_PATH 目录 \033[0m"
else
  echo -e "\033[33m $FILE_PATH 文件 \033[0m"
fi

# 检测是文件内容是否存在
if [ -s $FILE_PATH ]; then
  echo -e "\033[32m $FILE_PATH 有内容 \033[0m"
else
  echo -e "\033[33m $FILE_PATH 没有内容 \033[0m"
fi

# 输出内容到文件
OUT_PATH="/d/develop/demo/shell-learn/out"
if [ ! -e $OUT_PATH ]; then
  mkdir -p $OUT_PATH
fi
echo "测试内容,测试内容" >$OUT_PATH/test.txt

# 读取文件内容
while read -r line; do
  echo $line
done < $OUT_PATH/test.txt
